﻿using System.Runtime.Serialization;

namespace Toybox.NicoSharp.Seiga
{
	partial class Book
	{
		[DataContract]
		public class BookInfo
		{
			[DataMember]
			public bool is_success;

			[DataMember]
			public Info book;
		}

		[DataContract]
		public class Info
		{
			[DataMember]
			public string name;

			[DataMember]
			public string name_kana;

			[DataMember]
			public string subgenre;

			[DataMember]
			public Author[] authors;

			[DataMember]
			public string series;

			[DataMember]
			public string series_kana;

			[DataMember]
			public int series_number;

			[DataMember]
			public string short_description;

			[DataMember]
			public string long_description;

			[DataMember]
			public string publisher;

			[DataMember]
			public string label;

			[DataMember]
			public bool is_visible;

			[DataMember]
			public bool is_free;

			[DataMember]
			public ThumbnailUrl thumbnail_url;

			[DataMember]
			public Tag[] tags;

			[DataMember]
			public int file_size;

			[DataMember]
			public int trial_file_size;

			[DataMember]
			public int thread;

			[DataMember]
			public string comment_server_host;

			[DataMember]
			public int comment_server_http_port;

			[DataMember]
			public int comment_server_xml_port;

			[DataMember]
			public int trial_book_updated_at;

			[DataMember]
			public bool use_drm;

			[DataMember]
			public bool has_product;

			[DataMember]
			public int channel_id;

			[DataMember]
			public string isbn;

			[DataMember]
			public bool is_commentable;

			[DataMember]
			public bool is_taggable;

			[DataMember]
			public bool is_quotable;

			[DataMember]
			public string market;

			[DataMember]
			public string ch_pay_info;

		}

		[DataContract]
		public class Tag
		{
			[DataMember]
			public string id;

			[DataMember]
			public string name;

			[DataMember]
			public bool is_locked;

			[DataMember]
			public bool is_managed;
		}
	}
}
